User XXXX has already more than 'max_user_connections' active connections

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Traineeship IT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

Back-end PHP Developer

Dit ga je doen Her- en uitbouwen van het inhouse softwareplatform dmv PHP; Onderhouden van bovengenoemd platform in PHP; Sparren met het team; Meedenken over nieuwe functionaliteiten, security etc; Jouw input leveren aan het proces door op de hoogte te blijven van nieuwe ontwikkelingen etc. Hier ga je werken Onze klant, gevestigd in de omgeving van Alkmaar, levert wereldwijd oplossingen op het gebied van IT. Dag in dag uit werken zij met veel passie aan hun product waarmee ze streven naar verbeteringen binnen zorg. Voor onze klant zijn we op zoek naar een medior PHP Developer. Je komt te werken

Bekijk vacature »

Productontwikkelaar Food

Wat ga je doen Als Productontwikkelaar Food ga je nieuwe producten ontwikkelen en bestaande producten verbeteren. Je bent hierbij betrokken bij het gehele proces: van productconcept naar proefreceptuur, het realiseren va het product (op kleine schaal) en het testen van producten in een productieomgeving. Verder: Bewaak je de status van verschillende fases van productontwikkeling en lever je tijdig de benodigde data aan Ben je bezig met de optimalisatie van oude en nieuwe recepturen Begeleid of organiseer je proefsessies (sensorisch onderzoek) in het team en/of bij klanten Onderhoud je contacten met de klanten, leveranciers van grondstoffen e.a. externe partijen Houd je

Bekijk vacature »

.NET developer

Functie Jouw team van vier collega .NET developers is verantwoordelijk voor het bouwen van de ETL processen van jouw nieuwe werkgever. Op dit moment wordt de front-end gedaan door een extern team van professionals. Echter wilt jouw nieuwe werkgever graag intern deze kennis uitbreiden en heeft dan ook de ambitie om dit voor het eind van het jaar intern te gaan aanpakken. Dit betekend dat jij als .NET ontwikkelaar de ideale kans krijgt om jezelf samen met jouw collega’s te ontwikkelen als full stack developer. Als .NET ontwikkelaar werk jij bij deze gave werkgever met C# .NET, SQL, JavaScript, REST

Bekijk vacature »

Junior PHP (Laravel) Developer

Functie omschrijving Wij zijn op zoek naar een PHP Laravel Developer! Sta je aan het begin van je carrière en ben je op zoek naar een leuke baan? Lees dan verder! Voor een softwarebedrijf in omgeving van Schiphol zijn wij op zoek naar een ervaren PHP (Laravel) Developer. Je gaat je bezighouden met het ontwikkelen van innovatieve bedrijfsapplicaties. Samen met het team, bestaande uit designers en developers, maak je mooie oplossingen voor bedrijven in diverse branches. Je zorgt dat de opgeleverde websites perfect werken en de klant meer dan tevreden is. Je kunt rekenen op een afwisselende baan met leuke

Bekijk vacature »

Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12946 Introductie We are looking for a Java Developer! Our client is one of the most innovation companies located within the Netherlands. We provide high quality software in a high-tech and challenging market. Functieomschrijving The department is specialized in creating and developing high quality software for manufacturing automation in a high tech environment. We strive to provide our clients with high quality software and deliver state of the art solutions in a variety of ways. Creating software infrastructure using Java SE / EE Create applications to fine tune manufacturing processes

Bekijk vacature »

PHP Software Developer

Functie omschrijving Op zoek naar een nieuwe uitdaging binnen PHP? Lees dan snel verder! Wij zoeken een ervaren PHP developer die binnen een organisatie gaat functioneren als verlengstuk van de klant. Wij zoeken voor deze iemand die technisch complexe zaken met enthousiasme en plezier aanvliegt. Verder moet je instaat zijn om je tijd goed te managen omdat je aan meerdere projecten tegelijkertijd werkt. Je werkt met de nieuwste technieken en tijdens deze uitdaging werk je veel samen met de front-end developers van deze organisatie. Wij zoeken iemand die zichzelf graag uitdaagt en altijd de beste wilt zijn. Bedrijfsprofiel Waar ga

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij als software ontwikkelaar toe aan een nieuwe uitdaging? Dan zoeken wij jou! Voor het maken van de procesbesturingssoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Ontwerpen, programmeren en testen van product aanpassingen; Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden, o.a. door middel van SCRUM; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Implementeren van nieuwe product

Bekijk vacature »

Medior/senior Front-end developer (Vue.js)

Functie Als Front-end developer ben je uiteindelijk overkoepelend aan de slag voor de 3 ontwikkelteams die ieder aan een specifiek product werken. In samenwerking met de UX-designer en de huidige Front-end developer zorg je voor gebruiksvriendelijke software. Lijkt het jou interessant om complexe problemen op te lossen en feautures naar een hoger niveau te tillen? En vind je het niet erg om oudere delen van de applicaties te refactoren i.c.m. het toevoegen van nieuwe functionaliteiten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en zelfredzaamheid)

Bekijk vacature »

Senior Javascript developer

Functie Het platform is gebouwd in een moderne JavaScript stack, die gebruikt maakt van:  React.js  Redux  TypeScript  Node.js  Google Cloud functions (node.js)  Semantic UI Alle code wordt getest en beoordeeld door collega developers. De continuous integration pipeline maakt het mogelijk om elke dag waarde te leveren aan hun klanten. Het ontwikkelproces is pragmatisch en gebaseerd op Scrum. Wat je zult doen: Ten eerste kun je nadrukkelijk jouw eigen stempel drukken op de technologie, het product en de cultuur van het bedrijf. Je bent bezig met het uitwerken van de architectuur van nieuwe functionaliteiten op

Bekijk vacature »

.NET Developer

Dit ga je doen Tot jouw takenpakket behoort onder andere: Webapplicaties ontwerpen, bouwen, testen en implementeren in .NET/C#.; Ontwikkelen, implementeren en beheren van maatwerkapplicaties; Onderhouden en beheren van standaardpakketten; Onderzoeken en beoordelen van nieuwe technieken. Hier ga je werken Als .NET ontwikkelaar kom je te werken bij een grote semioverheidsinstelling in Nijmegen. De organisatie staat garant voor het leveren van onderwijs en les- en onderzoeksmateriaal voor duizenden betrokkenen. De organisatie wil bijdragen aan een gezonde, vrije wereld met gelijke kansen voor iedereen. Binnen de teams hangt een open en collegiale cultuur met veel aandacht voor een prettige en sociale werksfeer.

Bekijk vacature »

Software Programmeur PHP

Functie Ben jij op zoek naar een nieuwe uitdaging als PHP developer en zoek je een leuke platte organisatie? Lees dan snel verder! Voor een opdrachtgever in omgeving Capelle aan den IJssel dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

Back-end Developer Java

Dit ga je doen Het (door)ontwikkelen van een zelfgebouwde applicatie in Java, Spring Framework, SQL, HTML, CSS en Javascript; End-to-end beheer m.b.t. de applicatie en koppelen van applicaties binnen het landschap; Ontwikkelen van rapportages voor de interne organisatie; Ontwikkelen van aanvullende functionaliteiten m.b.t. de applicatie; Uitvoeren van testen en code reviews. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die medische gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen en verbeteren van de kwaliteit van de zorg in heel Nederland.

Bekijk vacature »

PHP Programmeur

Functieomschrijving Vanuit het hoofdkantoor in omgeving Breda, ontwikkel je als PHP programmeur niet alleen webapplicaties, maar ben je verder ook gefocust op het constant inspelen op nieuwe innovaties m.b.t software ontwikkeling. Naast het ontwikkelen van webapplicaties, bouwt deze toffe werkgever ook webshops en websites voor hun opdrachtgevers. Wat ga je doen? Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het ontwerpen en implementeren van webapplicaties met het Symfony framework; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden en updaten van bestaande applicaties die

Bekijk vacature »

Ontwikkelaar MS Dynamics 365 Projecten

Samengevat: Deze werkgever is de kwaliteitsdienst in de tuinbouwsector. Ben jij een ervaren ontwikkelaar? Heb jij ervaring met Ms Dynamics 365 BC? Vaste baan: Ontwikkelaar Ms Dynamics 365 BC ICT MBO 3.500 - 5.000 Ontwikkelaar Ms Dynamics 365 BC Ons bedrijf bewaakt en bevordert de kwaliteit van producten, processen en ketens in de tuinbouw. Wij kenmerken zich door openheid, ruimte voor initiatief, collegialiteit en zelfontplooiing. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Functie: Voor de vacature als Ontwikkelaar Ms Dynamics 365 BC Roelofarendsveen MBO

Bekijk vacature »
Andre

andre

10/07/2006 15:18:00
Quote Anchor link
Beste bezoekers,

op mijn site kunnen mensen plaatjes uploaden, maar als ik meerdere plaatjes achter elkaar upload, krijg ik na +- 6x een plaatje te uploaden, de volgende foutmelding:
Error:
"User "username" has already more than 'max_user_connections' active connections"

Als ik dan gewoon de hoofdpagina wil zien krijg ik dezelfde melding.

Hier de code die ik gebruik om te uploaden.
<script type="text/javascript">

function highlight(field) {
field.focus();
field.select();
}
-->
</script>
<table width="100%" border="1" cellspacing="0" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<td width="60%" height="60" valign="top"><p>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
include "includes/filter.php";
//Image Upload Script
//Created by Lappy512
//Part of ImageHostSript.
//See conf_global.php

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
<?php
// $userfile is where the file is on the webserver
$userfile = $HTTP_POST_FILES['imagefile']['tmp_name'];

// $userfile is original file name
$userfile_name = $HTTP_POST_FILES['imagefile']['name'];

// $userfile_size is size in bytes
$userfile_size = $HTTP_POST_FILES['imagefile']['size'];

// $userfile_type is mime type e.g. image/gif
$userfile_type = $HTTP_POST_FILES['imagefile']['type'];

// $comments are the comments, but we need logic if there aren't comments.
if($_POST['comments'])
{

    $comments = $_POST['comments'];
    if (get_magic_quotes_gpc() == 0)
    {

        $comments = addslashes($comments);
    }

    $comments = nl2br($comments);
}

else
{
    //they didn't comment
    $comments = 'Geen Commentaar bij dit plaatje';
}


// $url are is the URL, but we need logic if there isn't one.
if($_POST['url'])
{

    $url = $_POST['url'];
    if (get_magic_quotes_gpc() == 0)
    {

        $url = addslashes($url);
    }

    $url = nl2br($url);
}

else
{
    //they didn't comment
    $url = 'http://www.pornholio.be';
}


//Sporadic MIME-TYPES?
if ($userfile_type == 'image/x-png')
{

    $userfile_type = 'image/png';
}

if ($userfile_type == 'image/pjpeg')
{

    $userfile_type = 'image/jpeg';
}


// $userfile_error is any error encountered
$userfile_error = $HTTP_POST_FILES['imagefile']['error'];

//PHP 4.2.0+ code ONLY. This code will not work with PHP 4.1 or less
if ($userfile_error > 0)
{

    echo 'Problem: ';
    switch($userfile_error)
    {
        case
1: echo 'File exceeded Maximum upload filesize'; break;
        case
2: echo 'File exceeded Maximum upload filesize'; break;
        case
3: echo 'File partially uploaded'; break;
        case
4: echo 'No File Uploaded'; break;
    }

    exit;
}

//end of code for 4.2.0+

switch($userfile_type)
{
    case
'image/gif':
        break;
    case
'image/png':
        break;
    case
'image/jpeg':
        break;
    case
'image/bmp':
        echo "BMP File format not supported. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        exit;
    default:

        echo "Problem: File is not a supported image filetype. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        echo "<br> your file has a MIME-TYPE of $userfile_type";
        exit;
        break;
}

//Lets try connecting to mySQL
@ $db = mysql_pconnect($mysql['host'], $mysql['user'], $mysql['pass']);
//IT"S NOT WORKING!
if (!$db)
{

    die("error");
    mysql_close();
}

mysql_select_db($mysql['db']);

//We need to get a date for our Database
$date = time();

//Put the data there!
$query = "INSERT INTO `images` ( `id` , `size` , `downloads` , `lastuse` , `type` , `comments`, `url`, `ip` , `report` ) VALUES ('', " . $userfile_size . ", '0', " . $date . ", " . '\'' . $userfile_type . '\'' . ", " . '\'' . $comments . '\'' . ", " . '\'' . $url . '\'' . ", " . '\'' . $_SERVER['REMOTE_ADDR'] . '\'' . " , '' );";

//QUERY!
$result = mysql_query($query);
if (!$result)
{

    die("MySQL insert error");
    mysql_close();
}


$userfile_name = mysql_insert_id();

//put the file where we want it
$upfile = './uploads/' . $userfile_name;
//need PHP 4.0.3
if(is_uploaded_file($userfile))
{

    if (!move_uploaded_file($userfile, $upfile))
    {

        echo 'Problem: Could not move file to destination directory';
        exit;
        mysql_close();
    }
}

else
{
    echo 'Problem: Possible File upload attack. Filename: '.$userfile_name;
    exit;
    mysql_close();
}


echo '<br>Het bestand is succesvol geupload<br/><br/>';

//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);

//update statistics
//files update

$files = $stat['files'] + 1;
$query = "UPDATE `stat_cache` SET files=" . $files . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

//space update
$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}



//1337 h4x0rs can resize everything, even though we can't outputz0rz to everything.
//Resample it now!
// The file


$filename = $upfile;
$thumb = './uploads/' . 'thumb_' . $userfile_name;
// Set a maximum height and width
$width = 150;
$height = 150;

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if(($width_orig < $width) && ($height_orig < $height))
{

    $width = $width_orig;
    $height = $height_orig;
}

else
{
    if ($width && ($width_orig < $height_orig)) {
       $width = ($height / $height_orig) * $width_orig;
    }
else {
       $height = ($width / $width_orig) * $height_orig;
    }
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
if($userfile_type == 'image/jpeg')
{

    $image = imagecreatefromjpeg($filename);
}

if($userfile_type == 'image/png')
{

    $image = imagecreatefrompng($filename);
}

if($userfile_type == 'image/gif')
{

    $image = imagecreatefromgif($filename);
}

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
if($userfile_type == 'image/jpeg')
{

    imagejpeg($image_p, $thumb);
}

if($userfile_type == 'image/png' or $userfile_type == 'image/gif')
{

    imagepng($image_p, $thumb);
    $userfile_type = 'image/png';
}


$userfile_size = filesize($upfile);
$id = $userfile_name;

//Put the data there!
$query = "INSERT INTO `thumbs` ( `id` , `size` , `downloads` , `lastuse` , `type` )VALUES ('$id', '$userfile_size', '0', '$date', '$userfile_type');";

//QUERY!
$result = mysql_query($query);

if (!$result)
{

    die("MySQL insert error 2 " . mysql_error());
    mysql_close();
}


//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);
//update statistics
//space update

$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

?>


<FORM action="../nowhere" method="post" class="table_decoration">
<b><a href="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $siteurl; ?>
">Click hier om nog een foto te uploaden</a></b><br>
<br/>HTML:<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="<a href='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
'><img src='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
thumb/
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
.jpeg'></a>">
<br/>BBCODE:<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="[url=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
]Afbeelding[/url]">
<br/>Thumbnail for Forums(1):<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="[URL=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
]Afbeelding
 
PHP hulp

PHP hulp

25/11/2024 10:45:44
 
Arjan Kapteijn

Arjan Kapteijn

10/07/2006 15:24:00
Quote Anchor link
Okay, kan jij ondertussen voor mij een samenvatting van de koran schrijven? We willen je best helpen maar zitten hier niet om boekwerken te debuggen...

Zoiezo zou je kunnen beginnen door het script eens om te zetten naar de huidige standaard. $HTTP_POST_FILES kan je bijv. vervangen door $_FILES(). En je query's kunnen wat mij betreft ook wel wat netter en efficienter.

Overigens heeft jou probleem weinig met het script te maken. Je mysql heeft een maximaal aantal connecties wat hij tegelijkertijd wilt verwerken van één gebruiker. Verhoog die en je probleem is opgelost.
 
Erik Rijk

Erik Rijk

10/07/2006 15:38:00
Quote Anchor link
en waarom sluit je je mysql connectie zo vaak als je hem in hetzelfde script toch blijft gebruiken?
 
Andre

andre

10/07/2006 15:39:00
Quote Anchor link
He Arjan,

Sorry voor de rare post. Ik drukte per ongeluk op enter en toen stond ie er.

Ik heb hem een beetje uitgekleed en heb dat $_FILES() nu ook gebruikt. Ben nog niet zo heel lang bezig met php. Ben bezig met een cursus en heb dit script van internet gehaald en een beetje aangepast.

Ik host mijn website bij een derde en kan de max_users niet aanpassen. Ik denk zelf dat het iets heeft te maken met het feit dat ik de connectie na het uploaden moet verbreken.

Ik hoop dat er een goede oplossing gevonden kan worden.

Hierbij het uitgekledescript:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
<?php
// $userfile is where the file is on the webserver
$userfile = $_FILES()['imagefile']['tmp_name'];

// $userfile is original file name
$userfile_name = $_FILES()['imagefile']['name'];

// $userfile_size is size in bytes
$userfile_size = $_FILES()['imagefile']['size'];

// $userfile_type is mime type e.g. image/gif
$userfile_type = $_FILES()['imagefile']['type'];

// $comments are the comments, but we need logic if there aren't comments.
if($_POST['comments'])
{

    $comments = $_POST['comments'];
    if (get_magic_quotes_gpc() == 0)
    {

        $comments = addslashes($comments);
    }

    $comments = nl2br($comments);
}

else
{
    //they didn't comment
    $comments = 'Geen Commentaar bij dit plaatje';
}


// $url are is the URL, but we need logic if there isn't one.
if($_POST['url'])
{

    $url = $_POST['url'];
    if (get_magic_quotes_gpc() == 0)
    {

        $url = addslashes($url);
    }

    $url = nl2br($url);
}

else
{
    //they didn't comment
    $url = 'http://www.pornholio.be';
}


//Sporadic MIME-TYPES?
if ($userfile_type == 'image/x-png')
{

    $userfile_type = 'image/png';
}

if ($userfile_type == 'image/pjpeg')
{

    $userfile_type = 'image/jpeg';
}


// $userfile_error is any error encountered
$userfile_error = $_FILES()['imagefile']['error'];

//PHP 4.2.0+ code ONLY. This code will not work with PHP 4.1 or less
if ($userfile_error > 0)
{

    echo 'Problem: ';
    switch($userfile_error)
    {
        case
1: echo 'File exceeded Maximum upload filesize'; break;
        case
2: echo 'File exceeded Maximum upload filesize'; break;
        case
3: echo 'File partially uploaded'; break;
        case
4: echo 'No File Uploaded'; break;
    }

    exit;
}

//end of code for 4.2.0+

switch($userfile_type)
{
    case
'image/gif':
        break;
    case
'image/png':
        break;
    case
'image/jpeg':
        break;
    case
'image/bmp':
        echo "BMP File format not supported. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        exit;
    default:

        echo "Problem: File is not a supported image filetype. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        echo "<br> your file has a MIME-TYPE of $userfile_type";
        exit;
        break;
}

//Lets try connecting to mySQL
@ $db = mysql_pconnect($mysql['host'], $mysql['user'], $mysql['pass']);
//IT"S NOT WORKING!
if (!$db)
{

    die("error");
    mysql_close();
}

mysql_select_db($mysql['db']);

//We need to get a date for our Database
$date = time();

//Put the data there!
$query = "INSERT INTO `images` ( `id` , `size` , `downloads` , `lastuse` , `type` , `comments`, `url`, `ip` , `report` ) VALUES ('', " . $userfile_size . ", '0', " . $date . ", " . '\'' . $userfile_type . '\'' . ", " . '\'' . $comments . '\'' . ", " . '\'' . $url . '\'' . ", " . '\'' . $_SERVER['REMOTE_ADDR'] . '\'' . " , '' );";

//QUERY!
$result = mysql_query($query);
if (!$result)
{

    die("MySQL insert error");
    mysql_close();
}


$userfile_name = mysql_insert_id();

//put the file where we want it
$upfile = './uploads/' . $userfile_name;
//need PHP 4.0.3
if(is_uploaded_file($userfile))
{

    if (!move_uploaded_file($userfile, $upfile))
    {

        echo 'Problem: Could not move file to destination directory';
        exit;
        mysql_close();
    }
}

else
{
    echo 'Problem: Possible File upload attack. Filename: '.$userfile_name;
    exit;
    mysql_close();
}


echo '<br>Het bestand is succesvol geupload<br/><br/>';

//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);

//update statistics
//files update

$files = $stat['files'] + 1;
$query = "UPDATE `stat_cache` SET files=" . $files . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

//space update
$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}



//1337 h4x0rs can resize everything, even though we can't outputz0rz to everything.
//Resample it now!
// The file


$filename = $upfile;
$thumb = './uploads/' . 'thumb_' . $userfile_name;
// Set a maximum height and width
$width = 150;
$height = 150;

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if(($width_orig < $width) && ($height_orig < $height))
{

    $width = $width_orig;
    $height = $height_orig;
}

else
{
    if ($width && ($width_orig < $height_orig)) {
       $width = ($height / $height_orig) * $width_orig;
    }
else {
       $height = ($width / $width_orig) * $height_orig;
    }
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
if($userfile_type == 'image/jpeg')
{

    $image = imagecreatefromjpeg($filename);
}

if($userfile_type == 'image/png')
{

    $image = imagecreatefrompng($filename);
}

if($userfile_type == 'image/gif')
{

    $image = imagecreatefromgif($filename);
}

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
if($userfile_type == 'image/jpeg')
{

    imagejpeg($image_p, $thumb);
}

if($userfile_type == 'image/png' or $userfile_type == 'image/gif')
{

    imagepng($image_p, $thumb);
    $userfile_type = 'image/png';
}


$userfile_size = filesize($upfile);
$id = $userfile_name;

//Put the data there!
$query = "INSERT INTO `thumbs` ( `id` , `size` , `downloads` , `lastuse` , `type` )VALUES ('$id', '$userfile_size', '0', '$date', '$userfile_type');";

//QUERY!
$result = mysql_query($query);

if (!$result)
{

    die("MySQL insert error 2 " . mysql_error());
    mysql_close();
}


//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);
//update statistics
//space update

$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

?>
 
Arjan Kapteijn

Arjan Kapteijn

10/07/2006 15:52:00
Quote Anchor link
Je gebruikt mysql_pconnect(), die doet bijna hetzelfde als mysql_connect(), met twee grote verschillen.

Ten eerste, wanneer je verbinding maakt, zal de functie eerst proberen een (persistente) link te openen die al open staat met dezelfde host, username en password. Als er een gevonden wordt zal een identifier ervoor worden teruggegeven, in plaats van een nieuwe verbinding te openen.

Ten tweede, de verbinding met de SQL server zal niet worden gesloten wanneer de executie van het script klaar is. In plaats daarvan zal de link open blijven voor toekomstig gebruik (mysql_close() zal geen links sluiten die werden gemaakt door mysql_pconnect()).

mysql_connect() gebruiken dus :).l
 
Roy Bongers

Roy Bongers

10/07/2006 15:55:00
Quote Anchor link
:( Je bent me net voor. Ik wou presies 't zelfde posten.
 
Frank -

Frank -

10/07/2006 17:53:00
Quote Anchor link
Offtopic: Gooi die vieze en volkomen overbodige backtics ` bij het grofvuil. Die horen absoluut niet thuis in een goede en nette SQL-query.

Je wordt dan ook gedwongen om correcte tabel- en kolomnamen te gebruiken, daar kun je in de toekomst nog een hoop voordeel van hebben.

Nooit meer backtics in je queries zetten!
 
Andre

andre

15/07/2006 13:00:00
Quote Anchor link
Beste allemaal,

Bedankt voor de hulp. Het probleem is opgelost. @frank
Je hebt helemaal gelijk, maar ik wil voor de rest niets meer aan die website doen. Ik heb een nieuw project waar ik mee aan de slag ga en voor deze website ga ik gewoon mensen inhuren die het goed doen. Ben gewoon een beginneling en heb helemaal de kennis niet. Wilde gewoon even stoeien met PHP en wat ik tot nu toe heb opgezet is voldoende. Bedankt allemaal
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.